package com.laijiale.Service;

import com.github.pagehelper.PageInfo;
import com.laijiale.dto.*;
import com.laijiale.entities.Permission;
import com.laijiale.entities.Role;

import java.util.List;

/**
 * @author laijiale
 * @date 2024年07月28日 11:56
 */
public interface PermissionService {
    /**
     *
     * @param permissionInsertDTO
     * @return 改变表行数
     */
    int insert(PermissionInsertDTO permissionInsertDTO);

    /**
     *
     * @param id
     * @return
     */
    Permission selectById(Long id);

    /**
     *
     * @param permissionUpdateDTO
     * @return 改变表行数
     */
    int updateById(PermissionUpdateDTO permissionUpdateDTO);

    /**
     *
     * @param id 想要删除的主键
     * @return 改变行数
     */
    int logicDeleteById(Long id);

    /**
     *
     * @param ids 想要删除的主键1,2，3
     * @return 改变表行数
     */
    int logicDeleteByIds(List<Long> ids);

    /**
     *
     * @return 部门表
     */
    List<Permission> list();

   PageInfo<Permission> page(PageDTO pageDTO);

   List<Permission> listParents();
    PageInfo<Permission> pageLikeTitle(PermissionPageDTO dto);
}
